安安大家好,我是 Lacie,新手 iOS 開發者,在加入好想工作室自學 Swift 約半年之後,投入了目前正在服務的這間公司,到今日算起來也約有半年了。
在這半年之間除了 iOS 技能慢慢點開之外,另外為了支援公司專案,亦學習了 Flutter,故算是完完整整的 App 開發者,其他技能都沒點過。
契機 1
遙想之前剛開始在面試 iOS 工作時,有一道題目是「請設計一個具有物件導向概念的商城會員系統 Model」,那時候心想「不是回給我什麼 Json 我就通通把它丟進線上的 Json Parser 服務後產出 Model,接到了後我再來慢慢想怎麼處理資料嗎」(那時候真的菜,不過也因為之前在練習串接 API 時大多都是開源 API 已有固定格式,故就沒想那麼多)。
後來面試官跟我說,你自己沒想過怎麼串接資料比較方便的話,若後端瞎雞巴亂開回傳格式給你,你只能硬著頭皮去處理資料去串接,若你不知道什麼樣的格式更好,你也沒辦法跟後端溝通,這樣會造成效率降低。
契機 2
之後在開發公司專案時,因後端人手有限,老闆就問我說:「要不要試著學寫看看後端呢?」,故我就一頭撞進了 NestJs 後端異世界的大門了。
這是一個很酷的議題,因為通常「前端人會覺得後端好難好可怕,不知道在幹嘛」,「後端人會覺得前端怎麼那麼多畫面要弄,好多流程要串接」。
身為一個自己寫 API 自己串的人,我覺得不管是前後都很難。
在後端這裡,你可能要設計 DB Schema,你可能要會部署,你可能要會撰寫各種商業邏輯,預先處理好資料讓前端比較好接。
在前端這裡,除了介接資料之外,你要設計夠彈性的 UI 讓介接資料時畫面不會跑位,你可能要處理各種各樣的使用流程,串接起來整個用戶體驗。
於是乎,我就 P 了以下這張圖
雖然目前也寫了不少 API,但其實因為公司專案已由 CTO 負責把其他底層都給弄好了,故我只專注在 Controller 跟 Service 之間,這樣覺得有點可惜,好像後端只學了一半。
故接下來我想重頭開始,建立一個小小的、完整的後端專案,並部署到任一個雲上。
這是我的新手筆記,可能會有很多錯誤,但也是我的學習過程,真真實實新手的學習歷程,相信將來有一天亦能幫助到其他想要闖進後端世界的新手們。
那我們就走吧!闖進後端異世界中
/*
那個其實我沒看那部動畫,只是覺得這個名字很帥
本文會參考及學習 Udemy 課程 NestJS Zero to Hero - Modern TypeScript Back-end Development
*/